package com.demo.core.enums;

import lombok.Getter;

import java.util.concurrent.ConcurrentHashMap;

/**
 * @author Tan-Bowen
 * @description TODO 配置刷新事件枚举,eventId 不能重复
 * @date 2021/7/27 16:03
 */
@Getter
public enum ConfigEventEnum {
    /** 菜单缓存 */
    MENU_CACHE(12),

    /** 菜单缓存 */
    INTERFACE_CACHE(13),

    /** 部门缓存 */
    DEPT_CACHE(14),
    ;
    static ConcurrentHashMap<Integer, ConfigEventEnum> configEventEnums = new ConcurrentHashMap<>();
    static {
        for(ConfigEventEnum eventEnum : values()){
            configEventEnums.put(eventEnum.getEventId(),eventEnum);
        }
    }

    ConfigEventEnum(int eventId) {
        this.eventId = eventId;
    }

    private final int eventId;

    public static ConfigEventEnum parse(Integer eventId){
        return configEventEnums.get(eventId);
    }

}
